<?php
require("mail/class.phpmailer.php");

/*Conexion a la base de datos localhost*/
$host = "localhost";
$user = "root";
$contra = "";
$connect = mysql_connect($host, $user, $contra);		
mysql_select_db("sae", $connect);

/*Conexion a la base de datos: veemesoft.org/sae*/
/*$mysql_host = "localhost";
$mysql_database = "sae";
$mysql_user = "edg";
$mysql_password = "edg446066";
$connect = mysql_connect($mysql_host, $mysql_user, $mysql_password);
mysql_select_db($mysql_database, $connect);*/

/*Conexion a la base de datos: veemesoft.com.ar/tesis*/
/*$mysql_host = "localhost";
$mysql_database = "gall17f_tesis";
$mysql_user = "gall17f_eze";
$mysql_password = "edg446066";
$connect = mysql_connect($mysql_host, $mysql_user, $mysql_password);
mysql_select_db($mysql_database, $connect);*/

//Este metodo se utiliza para buscar los datos de la institucion y chequear que este activa.
$consulta = "SELECT cantMailMaxima, smtpWebMail, emailWebMail, passwordWebMail, puertoWebMail, nombreWebMail, nombre, idPersona, fechaUltimoEnvio, url,
				   (SELECT hash FROM archivo WHERE archivo.idArchivo=institucion.idArchivoEscudo LIMIT 1) AS hashArchivoEscudo,
				   (SELECT localidad.nombre FROM localidad, provincia WHERE localidad.idProvincia=provincia.idProvincia AND localidad.idLocalidad=institucion.idLocalidad AND localidad.estado<>-1 AND provincia.estado<>-1) AS localidad,
				   (SELECT provincia.nombre FROM localidad, provincia WHERE localidad.idProvincia=provincia.idProvincia AND localidad.idLocalidad=institucion.idLocalidad AND localidad.estado<>-1 AND provincia.estado<>-1) AS provincia
			 FROM institucion
			 WHERE institucion.idInstitucion=1 AND institucion.estado=1
			 LIMIT 1";

$resultadoConsulta = mysql_query($consulta, $connect);
$cantFilas = mysql_numrows($resultadoConsulta);

//Tiene que existir al menos un registro con los datos de la institucion activa
if($cantFilas == 1){
	$cantMailMaxima = mysql_result($resultadoConsulta, 0,0);
	$smtpWebMail = mysql_result($resultadoConsulta, 0,1);
	$emailWebMail = mysql_result($resultadoConsulta, 0,2);
	$passwordWebMail = mysql_result($resultadoConsulta, 0,3);
	$puertoWebMail = mysql_result($resultadoConsulta, 0,4);
	$nombreWebMail = mysql_result($resultadoConsulta, 0,5);
	$nombreSistema = mysql_result($resultadoConsulta, 0,6);
	$idPersona = mysql_result($resultadoConsulta, 0,7);
	$fechaUltimoEnvio = mysql_result($resultadoConsulta, 0,8);
	$url = mysql_result($resultadoConsulta, 0,9);
	
	//Controlo que esten todos los parametros de configuracion cargados completamente y correctamente
	if(is_numeric($cantMailMaxima) && $cantMailMaxima>0 && $cantMailMaxima<50 && $smtpWebMail!="" && $emailWebMail!="" && $passwordWebMail!="" && is_numeric($puertoWebMail) && $puertoWebMail>0 && $nombreWebMail!="" && $nombreSistema!="" && is_numeric($idPersona) && $idPersona>=0){
		
		echo("Cant Email: ". $cantMailMaxima . "<br/>");
		echo("Smtp: ". $smtpWebMail . "<br/>");
		echo("Email: ". $emailWebMail . "<br/>");
		echo("Password: ". $passwordWebMail . "<br/>");
		echo("Puerto: ". $puertoWebMail . "<br/>");
		echo("Nombre Web Mail: ". $nombreWebMail . "<br/>");
		echo("Nombre Sistema: ". $nombreSistema . "<br/>");
		echo("Id Persona: ". $idPersona . "<br/><br/>");
		echo("Fecha Ultimo Envio: ". $fechaUltimoEnvio . "<br/><br/>");
		
		//PHPMAILER: Primero: Tenemos que iniciar la validación por SMTP:
		$mail = new PHPMailer();
		$mail->IsSMTP();
		$mail->SMTPAuth = true;
		$mail->Host = $smtpWebMail; //"mail.veemesoft.com.ar"; // SMTP a utilizar. Por ej. smtp.elserver.com
		$mail->Username = $emailWebMail; //"info@veemesoft.com.ar"; // Correo completo a utilizar
		$mail->Password = $passwordWebMail; //"edg446066"; // Contraseña
		$mail->Port = $puertoWebMail; //25; // Puerto a utilizar
		
		//PHPMAILER: Segundo: Lo que ahora deberíamos hacer, es configurar el mensaje a enviar, el //From, etc.
		$mail->From = $emailWebMail; //"info@veemesoft.com.ar"; // Desde donde enviamos (Para mostrar)
		$mail->FromName = $nombreWebMail; //"Sistema VeemeSoft";
		$mail->IsHTML(true); // El correo se envía como HTML
		
		$hoy = date("Y-m-d");
		
		//Controlamos que no se haya completado el envio a todas las personas en el dia de hoy.
		if($hoy>$fechaUltimoEnvio){
			//Este metodo se utiliza cuando queremos devolver el UNICO ciclo lectivo VIGENTE
			$consulta = "SELECT idCicloLectivo
						 FROM ciclolectivo
						 WHERE estado=1
						 LIMIT 1";

			$resultadoConsulta = mysql_query($consulta, $connect);
			$cantFilas = mysql_numrows($resultadoConsulta);
			
			//Tiene que existir al menos un ciclo vigente para calcular los datos de los alumnos de este ciclo.
			if($cantFilas == 1){
				$idCicloLectivoVigente = mysql_result($resultadoConsulta, 0,0);
				
				echo("Ciclo Vigente: ".$idCicloLectivoVigente."<br/>");
				
				$restriccion = "";
				$restriccionCicloLectivo = "";
				$restriccionFecha = " AND timeline.fechaTimelinePasado>'".$fechaUltimoEnvio."'";
				
				//Agregamos a la restriccion el id del ciclo vigente.
				$restriccionCicloLectivo = " AND curso.idCicloLectivo=".$idCicloLectivoVigente;
				
				//Fin se utiliza para salir del programa en caso de llegar a la ultima persona.
				//Cantidad sirve para contar que solo se envien la cantidad maxima permitida de correos por periodo.
				$fin = 1;
				$cant = 0;
				
				//Tenemos que mandar solamente la cantidad de mails indicada
				do{
					//Buscamos a la persona siguiente que hay que mandarle los correos			
					do{
						$estado = -1;
						$email = "";
						
						//Aumentamos el id en uno para buscar la proxima persona
						$idPersona++;
						
						//Buscamos la persona para saber si esta activa, si quiere recibir correos y si tiene email cargado.
						$consulta = "SELECT estado, email, enviarEmails, apellido, nombre
									FROM persona
									WHERE idPersona=".$idPersona."
									LIMIT 1";
						
						$resultadoConsulta = mysql_query($consulta, $connect);
						$cantFilas = mysql_numrows($resultadoConsulta);
						
						//Si llegamos a la ultima persona buscamos la primera nuevamente.
						if($cantFilas == 1){
							$estado = mysql_result($resultadoConsulta, 0,0);
							$email = mysql_result($resultadoConsulta, 0,1);
							$enviarEmails = mysql_result($resultadoConsulta, 0,2);
							$apellidoPersona = mysql_result($resultadoConsulta, 0,3);
							$nombrePersona = mysql_result($resultadoConsulta, 0,4);
						}else{
							$idPersona = 0;
							$fin = 0;
							
							//Como completamos todas las personas actualizamos la fecha de ultimo envio completado
							$consulta = "UPDATE `institucion` 
										 SET `fechaUltimoEnvio` = '". date("Y-m-d") ."'											 
										 WHERE `institucion`.`idInstitucion` = 1 
										 LIMIT 1";
						
							$resultadoConsulta = mysql_query($consulta, $connect);
						}
					}while($fin==1 && ($estado==-1 || $estado==0 || $email=="" || $enviarEmails=="0"));
					
					//Sumo en uno la cantidad de correos enviados en este periodo de tiempo del CRON.
					$cant++;
					
					//INICIO ENVIO DE CORREO--------------------------------------------------------------------------------------------------------------
					echo("<br> PERSONA A ENVIAR CORREO A :".$nombrePersona . " - ID: ".$idPersona);
					
					//Verificamos que idPersona sea mayor que cero
					if($idPersona>0){
						//Si la persona es TUTOR busco el id del mismo-------------------------------------------------------------------------------------------
						$consulta = "SELECT tutor.idTutor
									  FROM tutor, persona
									  WHERE tutor.idPersona=persona.idPersona AND 
											tutor.estado=1 AND 
											persona.estado=1 AND 
											tutor.idPersona=".$idPersona." 
									  LIMIT 1";
						
						$resultadoConsulta = mysql_query($consulta, $connect);
						$cantFilas = mysql_numrows($resultadoConsulta);
						
						$idTutor = 0;
						//Si devuelve un registro es porque es tutor y hay que guardar su id.
						if($cantFilas == 1){
							$idTutor = mysql_result($resultadoConsulta, 0,0);						
						}
						//----------------------------------------------------------------------------------------------------------------------------------------
						
						//Si la persona es ALUMNO busco el id del mismo-------------------------------------------------------------------------------------------
						$consulta = "SELECT alumno.idAlumno
									  FROM alumno, persona
									  WHERE alumno.idPersona=persona.idPersona AND 
											alumno.estado=1 AND 
											persona.estado=1 AND 
											alumno.idPersona=".$idPersona."
									  LIMIT 1";
						
						$resultadoConsulta = mysql_query($consulta, $connect);
						$cantFilas = mysql_numrows($resultadoConsulta);
						
						$idAlumno = 0;
						//Si devuelve un registro es porque es alumno y hay que guardar su id.
						if($cantFilas == 1){
							$idAlumno = mysql_result($resultadoConsulta, 0,0);						
						}
						//-----------------------------------------------------------------------------------------------------------------------------------------
						
						//Si la persona es DOCENTE busco el id del mismo-------------------------------------------------------------------------------------------
						$consulta = "SELECT docente.idDocente											
									  FROM docente, persona
									  WHERE docente.idPersona=persona.idPersona AND 
											docente.estado=1 AND 
											persona.estado=1 AND 
											docente.idPersona=".$idPersona."
									  LIMIT 1";
						
						$resultadoConsulta = mysql_query($consulta, $connect);
						$cantFilas = mysql_numrows($resultadoConsulta);
						
						$idDocente = 0;
						//Si devuelve un registro es porque es docente y hay que guardar su id.
						if($cantFilas == 1){
							$idDocente = mysql_result($resultadoConsulta, 0,0);						
						}
						//-----------------------------------------------------------------------------------------------------------------------------------------
						
						//Si la persona es DIRECTIVO busco el id del mismo-------------------------------------------------------------------------------------------
						$consulta = "SELECT directivo.idDirectivo
									  FROM directivo, persona
									  WHERE directivo.idPersona=persona.idPersona AND 
											directivo.estado=1 AND 
											persona.estado=1 AND
											directivo.idPersona=".$idPersona."
									  LIMIT 1";
						
						$resultadoConsulta = mysql_query($consulta, $connect);
						$cantFilas = mysql_numrows($resultadoConsulta);
						
						$idDirectivo = 0;
						//Si devuelve un registro es porque es directivo y hay que guardar su id.
						if($cantFilas == 1){
							$idDirectivo = mysql_result($resultadoConsulta, 0,0);						
						}
						//-----------------------------------------------------------------------------------------------------------------------------------------
						//-----------------------------------------------------------------------------------------------------------------------------------------
						//ARMAMOS LAS RESTRICCIONES PARA BUSCAR SOLO LAS QUE LE COMPETEN A LA PERSONA EN CUESTION
						//-----------------------------------------------------------------------------------------------------------------------------------------
						//VACIAMOS LA RESTRICCION.
						$restriccion = "";
						
						//Todas son personas asi que agregamos la siguiente restriccion.
						$restriccion .= " AND ((timeline.idTablaDestino=25 AND timeline.idRegistroDestino=".$idPersona.")";
						
						//Si el usuario es ALUMNO
						if($idAlumno>0){
							$restriccion .= " OR (timeline.idTablaDestino=21 AND timeline.idRegistroDestino=".$idAlumno.")";
							$restriccion .= " OR (timeline.idTablaDestino=1 AND timeline.idRegistroDestino IN (SELECT curso.idCicloLectivo FROM alumnoxdivision, division, curso, turno WHERE alumnoxdivision.idDivision=division.idDivision AND division.idCurso=curso.idCurso AND curso.idTurno=turno.idTurno AND alumnoxdivision.estado=1 AND division.estado=1 AND curso.estado=1 AND turno.estado=1 AND alumnoxdivision.idAlumno=".$idAlumno."))";
							$restriccion .= " OR (timeline.idTablaDestino=6 AND timeline.idRegistroDestino IN (SELECT curso.idCurso FROM alumnoxdivision, division, curso, turno WHERE alumnoxdivision.idDivision=division.idDivision AND division.idCurso=curso.idCurso AND curso.idTurno=turno.idTurno AND alumnoxdivision.estado=1 AND division.estado=1 AND curso.estado=1 AND turno.estado=1 AND alumnoxdivision.idAlumno=".$idAlumno."))";
							$restriccion .= " OR (timeline.idTablaDestino=11 AND timeline.idRegistroDestino IN (SELECT division.idDivision FROM alumnoxdivision, division, curso, turno WHERE alumnoxdivision.idDivision=division.idDivision AND division.idCurso=curso.idCurso AND curso.idTurno=turno.idTurno AND alumnoxdivision.estado=1 AND division.estado=1 AND curso.estado=1 AND turno.estado=1 AND alumnoxdivision.idAlumno=".$idAlumno."))";
							$restriccion .= " OR (timeline.idTablaDestino=16 AND timeline.idRegistroDestino IN (SELECT curso.idTurno FROM alumnoxdivision, division, curso, turno WHERE alumnoxdivision.idDivision=division.idDivision AND division.idCurso=curso.idCurso AND curso.idTurno=turno.idTurno AND alumnoxdivision.estado=1 AND division.estado=1 AND curso.estado=1 AND turno.estado=1 AND alumnoxdivision.idAlumno=".$idAlumno." $restriccionCicloLectivo))";	
						}
						
						//Si el usuario es TUTOR
						if($idTutor>0){
							$restriccion .= " OR (timeline.idTablaDestino=22 AND timeline.idRegistroDestino=".$idTutor.")";
							$restriccion .= " OR (timeline.idTablaDestino=2 AND timeline.idRegistroDestino IN (SELECT curso.idCicloLectivo FROM tutorxalumno, alumnoxdivision, division, curso, turno WHERE tutorxalumno.idAlumno=alumnoxdivision.idAlumno AND alumnoxdivision.idDivision=division.idDivision AND division.idCurso=curso.idCurso AND curso.idTurno=turno.idTurno AND tutorxalumno.estado=1 AND alumnoxdivision.estado=1 AND division.estado=1 AND curso.estado=1 AND turno.estado=1 AND tutorxalumno.idTutor=".$idTutor."))";
							$restriccion .= " OR (timeline.idTablaDestino=7 AND timeline.idRegistroDestino IN (SELECT curso.idCurso FROM tutorxalumno, alumnoxdivision, division, curso, turno WHERE tutorxalumno.idAlumno=alumnoxdivision.idAlumno AND alumnoxdivision.idDivision=division.idDivision AND division.idCurso=curso.idCurso AND curso.idTurno=turno.idTurno AND tutorxalumno.estado=1 AND alumnoxdivision.estado=1 AND division.estado=1 AND curso.estado=1 AND turno.estado=1 AND tutorxalumno.idTutor=".$idTutor."))";
							$restriccion .= " OR (timeline.idTablaDestino=12 AND timeline.idRegistroDestino IN (SELECT division.idDivision FROM tutorxalumno, alumnoxdivision, division, curso, turno WHERE tutorxalumno.idAlumno=alumnoxdivision.idAlumno AND alumnoxdivision.idDivision=division.idDivision AND division.idCurso=curso.idCurso AND curso.idTurno=turno.idTurno AND tutorxalumno.estado=1 AND alumnoxdivision.estado=1 AND division.estado=1 AND curso.estado=1 AND turno.estado=1 AND tutorxalumno.idTutor=".$idTutor."))";
							$restriccion .= " OR (timeline.idTablaDestino=17 AND timeline.idRegistroDestino IN (SELECT curso.idTurno FROM tutorxalumno, alumnoxdivision, division, curso, turno WHERE tutorxalumno.idAlumno=alumnoxdivision.idAlumno AND alumnoxdivision.idDivision=division.idDivision AND division.idCurso=curso.idCurso AND curso.idTurno=turno.idTurno AND tutorxalumno.estado=1 AND alumnoxdivision.estado=1 AND division.estado=1 AND curso.estado=1 AND turno.estado=1 AND tutorxalumno.idTutor=".$idTutor." $restriccionCicloLectivo))";
						}
						
						//Si el usuario es DOCENTE
						if($idDocente>0){
							$restriccion .= " OR (timeline.idTablaDestino=23 AND timeline.idRegistroDestino=".$idDocente.")";
							$restriccion .= " OR (timeline.idTablaDestino=3 AND timeline.idRegistroDestino IN (SELECT curso.idCicloLectivo FROM docentexasignatura, asignatura, division, curso, turno WHERE docentexasignatura.idAsignatura=asignatura.idAsignatura AND asignatura.idDivision=division.idDivision AND division.idCurso=curso.idCurso AND curso.idTurno=turno.idTurno AND docentexasignatura.estado=1 AND asignatura.estado=1 AND division.estado=1 AND curso.estado=1 AND turno.estado=1 AND docentexasignatura.idDocente=".$idDocente."))";
							$restriccion .= " OR (timeline.idTablaDestino=8 AND timeline.idRegistroDestino IN (SELECT curso.idCurso FROM docentexasignatura, asignatura, division, curso, turno WHERE docentexasignatura.idAsignatura=asignatura.idAsignatura AND asignatura.idDivision=division.idDivision AND division.idCurso=curso.idCurso AND curso.idTurno=turno.idTurno AND docentexasignatura.estado=1 AND asignatura.estado=1 AND division.estado=1 AND curso.estado=1 AND turno.estado=1 AND docentexasignatura.idDocente=".$idDocente."))";
							$restriccion .= " OR (timeline.idTablaDestino=13 AND timeline.idRegistroDestino IN (SELECT division.idDivision FROM docentexasignatura, asignatura, division, curso, turno WHERE docentexasignatura.idAsignatura=asignatura.idAsignatura AND asignatura.idDivision=division.idDivision AND division.idCurso=curso.idCurso AND curso.idTurno=turno.idTurno AND docentexasignatura.estado=1 AND asignatura.estado=1 AND division.estado=1 AND curso.estado=1 AND turno.estado=1 AND docentexasignatura.idDocente=".$idDocente."))";
							$restriccion .= " OR (timeline.idTablaDestino=18 AND timeline.idRegistroDestino IN (SELECT curso.idTurno FROM docentexasignatura, asignatura, division, curso, turno WHERE docentexasignatura.idAsignatura=asignatura.idAsignatura AND asignatura.idDivision=division.idDivision AND division.idCurso=curso.idCurso AND curso.idTurno=turno.idTurno AND docentexasignatura.estado=1 AND asignatura.estado=1 AND division.estado=1 AND curso.estado=1 AND turno.estado=1 AND docentexasignatura.idDocente=".$idDocente."))";
						}
						
						//Si el usuario es DIRECTIVO
						if($idDirectivo>0){
							$restriccion .= " OR (timeline.idTablaDestino=24 AND timeline.idRegistroDestino=".$idDirectivo.")";
							$restriccion .= " OR timeline.idTablaDestino=4 OR timeline.idTablaDestino=9 OR timeline.idTablaDestino=14 OR timeline.idTablaDestino=19";
						}
						
						$restriccion .= ") AND timeline.fechaTimelinePasado<=now()";
						
						//Busco las novedades que le interesan a la persona en cuestion--------------------------------------------------
						$consulta = "SELECT timeline.tipoOperacion, timeline.idTablaOrigen, timeline.idRegistroOrigen, timeline.idTablaDestino, timeline.idRegistroDestino,
											DATE_FORMAT(timeline.fechaTimelinePasado,'%d/%m/%Y %H:%i:%s') AS fechaTimelinePasadoFormateada, 
											DATE_FORMAT(timeline.fechaTimelinePasado,'%d/%m/%Y') AS fechaTimelinePasadoFormateada2,
											DATE_FORMAT(timeline.fechaTimelineFuturo,'%d/%m/%Y %H:%i:%s') AS fechaTimelineFuturoFormateada
									  FROM timeline
									  WHERE timeline.estado=1 $restriccion $restriccionFecha 
									  GROUP BY timeline.idTablaOrigen, timeline.idRegistroOrigen, timeline.fechaTimelinePasado
									  ORDER BY timeline.idTimeline DESC";
						
						//echo($consulta);
						
						$resultadoConsulta = mysql_query($consulta, $connect);
						$cantFilas = mysql_numrows($resultadoConsulta);
						
						//Si devuelve un registro es porque hay novedades que enviar a la persona.
						if($cantFilas >= 1){
							echo("<br> CANTIDAD DE NOVEDADES A ENVIAR :".$cantFilas);
							
							$mail->ClearAddresses(); // Borra todas las direcciones guardadas hasta el momento.
						
							//Estas dos líneas, cumplirían la función de encabezado (En mail() usado de esta forma: "From: Nombre <correo@dominio.com>") de correo.
							$mail->AddAddress($email); // Esta es la dirección a donde enviamos
							
							// Este es el titulo o asunto del email.
							$mail->Subject = " Novedades para ". $nombrePersona;
							
							//Mandamos el email a los destinatarios
							$mail->Body = "Resumen de las &uacute;ltimas noticias y novedades ocurridas en la instituci&oacute;n: <br>"; // Mensaje a enviar
							
							//Recorremos todas las novedades y armamos el correo.
							for($i=0;$i<$cantFilas;$i++){
								$tipoOperacion = mysql_result($resultadoConsulta, $i,0);
								$idTablaOrigen = mysql_result($resultadoConsulta, $i,1);
								$idRegistroOrigen = mysql_result($resultadoConsulta, $i,2);
								$idTablaDestino = mysql_result($resultadoConsulta, $i,3);
								$idRegistroDestino = mysql_result($resultadoConsulta, $i,4);
								$fechaTimelinePasadoFormateada = mysql_result($resultadoConsulta, $i,5);
								$fechaTimelinePasadoFormateada2 = mysql_result($resultadoConsulta, $i,6);
							
								//SANCIONES
								if($idTablaOrigen == 1){
									//Busco a la sancion para obtener los datos de ella.
									$consulta = "SELECT sancion.titulo,
														(SELECT nombre FROM tiposancion WHERE tiposancion.idTipoSancion=sancion.idTipoSancion AND tiposancion.estado<>-1 LIMIT 1) AS tipoSancion, 
														DATE_FORMAT(sancion.fechaOcurrencia,'%d/%m/%Y') AS fechaOcurrenciaFormateada														
												  FROM sancion, alumnoxdivision, division, curso, alumno, persona
												  WHERE sancion.idAxD=alumnoxdivision.idAxD AND
														alumnoxdivision.idDivision=division.idDivision AND
														division.idCurso=curso.idCurso AND
														alumnoxdivision.idAlumno=alumno.idAlumno AND
														alumno.idPersona=persona.idPersona AND
														sancion.estado<>-1 AND
														alumnoxdivision.estado<>-1 AND
														division.estado<>-1 AND
														curso.estado<>-1 AND
														alumno.estado<>-1 AND
														persona.estado<>-1 AND
														sancion.idSancion=".$idRegistroOrigen." AND sancion.estado=1
												  LIMIT 1";
									
									$resultadoConsulta2 = mysql_query($consulta, $connect);
									$cantFilas2 = mysql_numrows($resultadoConsulta2);
									
									if($cantFilas2==1){
										$tituloSanc = mysql_result($resultadoConsulta2, 0,0);
										$tipoSanc = mysql_result($resultadoConsulta2, 0,1);
										$fechaOcurrenciaFormateada = mysql_result($resultadoConsulta2, 0,2);
																				
										$mail->Body .= '<br><span style="font-weight:bold">'.$fechaOcurrenciaFormateada.":</span> Has recibido una sanci&oacute;n del tipo ". $tipoSanc.". Breve descripci&oacute;n: ".$tituloSanc.".";
										if($tipoOperacion == 2) $mail->Body .= " (Editado)";
									}
								}
								//FIN SANCIONES
								
								//ASISTENCIA Y DETALLE DE ASISTENCIA
								if($idTablaOrigen == 2){
									//Busco a la asistencia para obtener los datos de ella.
									$consulta = "SELECT estadodetalleasistencia.nombre AS nombreEstadoDetalleAsistencia,														
														 DATE_FORMAT(asistencia.fecha,'%d/%m/%Y') AS fechaFormateada
												  FROM detalleasistencia, asistencia, estadodetalleasistencia
												  WHERE detalleasistencia.estado<>-1 AND 
														asistencia.estado<>-1 AND 
														estadodetalleasistencia.estado<>-1 AND 
														detalleasistencia.idAsistencia=asistencia.idAsistencia AND
														detalleasistencia.idEstadoDetalleAsistencia=estadodetalleasistencia.idEstadoDetalleAsistencia AND
														detalleasistencia.idDetalleAsistencia=".$idRegistroOrigen." AND detalleasistencia.estado=1 AND estadodetalleasistencia.valor>0
												  LIMIT 1";
									
									$resultadoConsulta2 = mysql_query($consulta, $connect);
									$cantFilas2 = mysql_numrows($resultadoConsulta2);
									
									if($cantFilas2==1){
										$nombreEstadoDetalleAsistencia = mysql_result($resultadoConsulta2, 0,0);
										$fechaFormateada = mysql_result($resultadoConsulta2, 0,1);
																														
										$mail->Body .= '<br><span style="font-weight:bold">'.$fechaFormateada.":</span> Has tenido una inasistencia del tipo ". $nombreEstadoDetalleAsistencia.".";									
										if($tipoOperacion == 2) $mail->Body .= " (Editado)";
									}
								}
								//FIN ASISTENCIA Y DETALLE DE ASISTENCIA
								
								//EVALUACIONES
								if($idTablaOrigen == 3){
									//Busco a la evaluacion para obtener los datos de ella.
									$consulta = "SELECT evaluacion.nombre,  asignatura.nombre AS asignatura,
														 (SELECT tipoevaluacion.nombre FROM tipoevaluacion WHERE tipoevaluacion.idTipoEvaluacion=evaluacion.idTipoEvaluacion AND tipoevaluacion.estado<>-1 LIMIT 1) as tipoEvaluacion,
														 DATE_FORMAT(evaluacion.fechaEvaluacion,'%d/%m/%Y') AS fechaEvaluacionFormateada
												  FROM evaluacion, asignatura, division, curso, ciclolectivo, turno
												  WHERE evaluacion.idAsignatura=asignatura.idAsignatura AND
														asignatura.idDivision=division.idDivision AND 
														division.idCurso=curso.idCurso AND
														curso.idCicloLectivo=ciclolectivo.idCicloLectivo AND 
														curso.idTurno=turno.idTurno AND 
														evaluacion.estado<>-1 AND 
														asignatura.estado<>-1 AND 
														division.estado<>-1 AND 
														curso.estado<>-1 AND											
														ciclolectivo.estado<>-1 AND 
														turno.estado<>-1 AND 
														evaluacion.idEvaluacion=".$idRegistroOrigen." AND evaluacion.estado=1
												  LIMIT 1";
									
									$resultadoConsulta2 = mysql_query($consulta, $connect);
									$cantFilas2 = mysql_numrows($resultadoConsulta2);
									
									if($cantFilas2==1){
										$nombreEval = mysql_result($resultadoConsulta2, 0,0);
										$nombreAsig = mysql_result($resultadoConsulta2, 0,1);
										$tipoEval = mysql_result($resultadoConsulta2, 0,2);
										$fechaEvaluacionFormateada = mysql_result($resultadoConsulta2, 0,3);
										
										$mail->Body .= '<br><span style="font-weight:bold">'.$fechaEvaluacionFormateada.":</span> Se ha agregado una nueva evaluaci&oacute;n de ".$nombreAsig.". Breve descripci&oacute;n: ".$nombreEval.".";
										if($tipoOperacion == 2) $mail->Body .= " (Editado)";
									}
								}
								//FIN EVALUACIONES
								
								//RESULTADO DE EVALUACIONES
								if($idTablaOrigen == 4){
									//Busco a la calificacion de evaluacion para obtener los datos de ella.
									$consulta = "SELECT calificacionxevaluacion.calificacion, asignatura.nombre AS nombreAsignatura,
														 DATE_FORMAT(calificacionxevaluacion.fechaCreacion,'%d/%m/%Y') AS fechaCreacionFormateada
												  FROM calificacionxevaluacion, evaluacion, asignatura, alumnoxdivision, alumno, persona
												  WHERE calificacionxevaluacion.estado<>-1 AND 
														evaluacion.estado<>-1 AND 
														asignatura.estado<>-1 AND 
														alumnoxdivision.estado<>-1 AND 
														alumno.estado<>-1 AND 
														persona.estado<>-1 AND 
														calificacionxevaluacion.idEvaluacion=evaluacion.idEvaluacion AND
														evaluacion.idAsignatura=asignatura.idAsignatura AND
														calificacionxevaluacion.idAxD=alumnoxdivision.idAxD AND
														alumnoxdivision.idAlumno=alumno.idAlumno AND
														alumno.idPersona=persona.idPersona AND
														calificacionxevaluacion.idCxE=".$idRegistroOrigen." AND calificacionxevaluacion.estado=1 AND evaluacion.estado=1
												  LIMIT 1";
									
									$resultadoConsulta2 = mysql_query($consulta, $connect);
									$cantFilas2 = mysql_numrows($resultadoConsulta2);
									
									if($cantFilas2==1){
										$calificacionEval = mysql_result($resultadoConsulta2, 0,0);
										$nombreAsig = mysql_result($resultadoConsulta2, 0,1);
										$fechaCreacionFormateada = mysql_result($resultadoConsulta2, 0,2);
										
										$mail->Body .= '<br><span style="font-weight:bold">'.$fechaCreacionFormateada.":</span> Has recibido la siguiente calificaci&oacute;n en ".$nombreAsig.": ".$calificacionEval.".";									
										if($tipoOperacion == 2) $mail->Body .= " (Editado)";
									}
								}
								//FIN DE RESULTADO DE EVALUACIONES
								
								//CLASES
								if($idTablaOrigen == 5){
									//Busco a la clase para obtener los datos de ella.
									$consulta = "SELECT clase.nombre, asignatura.nombre AS nombreAsignatura,
														DATE_FORMAT(clase.fechaPublicacion,'%d/%m/%Y') AS fechaPublicacionFormateada
												  FROM clase, asignatura, division, curso, ciclolectivo, turno
												  WHERE clase.idAsignatura=asignatura.idAsignatura AND
														asignatura.idDivision=division.idDivision AND 
														division.idCurso=curso.idCurso AND
														curso.idCicloLectivo=ciclolectivo.idCicloLectivo AND 
														curso.idTurno=turno.idTurno AND 
														clase.estado<>-1 AND 
														asignatura.estado<>-1 AND 
														division.estado<>-1 AND 
														curso.estado<>-1 AND											
														ciclolectivo.estado<>-1 AND 
														turno.estado<>-1 AND 
														clase.idClase=".$idRegistroOrigen." AND clase.estado=1 AND clase.fechaPublicacion<=now()
												  LIMIT 1";
									
									$resultadoConsulta2 = mysql_query($consulta, $connect);
									$cantFilas2 = mysql_numrows($resultadoConsulta2);
									
									if($cantFilas2==1){
										$nombreClase = mysql_result($resultadoConsulta2, 0,0);
										$nombreAsig = mysql_result($resultadoConsulta2, 0,1);
										$fechaPublicacionFormateada = mysql_result($resultadoConsulta2, 0,2);
										
										$mail->Body .= '<br><span style="font-weight:bold">'.$fechaPublicacionFormateada.":</span> Se ha agregado una nueva clase de ".$nombreAsig.".";
										if($tipoOperacion == 2) $mail->Body .= " (Editado)";
									}
								}
								//FIN DE CLASES
								
								//CONTENIDO EDUCATIVO
								if($idTablaOrigen == 6){
									//Busco al contenido para obtener los datos de el.
									$consulta = "SELECT contenidoeducativo.nombre, clase.nombre AS nombreClase, asignatura.nombre AS nombreAsignatura,
														DATE_FORMAT(contenidoeducativo.fechaCreacion,'%d/%m/%Y') AS fechaCreacionFormateada
												  FROM contenidoeducativo, clase, asignatura
												  WHERE contenidoeducativo.idClase=clase.idClase AND
														clase.idAsignatura=asignatura.idAsignatura AND
														contenidoeducativo.estado<>-1 AND 
														clase.estado<>-1 AND 
														asignatura.estado<>-1 AND 
														contenidoeducativo.idContenidoEducativo=".$idRegistroOrigen." AND contenidoeducativo.estado=1 AND clase.estado=1 AND clase.fechaPublicacion<=now()
												  LIMIT 1";
									
									$resultadoConsulta2 = mysql_query($consulta, $connect);
									$cantFilas2 = mysql_numrows($resultadoConsulta2);
									
									if($cantFilas2==1){
										$nombreContenido = mysql_result($resultadoConsulta2, 0,0);
										$nombreClase = mysql_result($resultadoConsulta2, 0,1);
										$nombreAsig = mysql_result($resultadoConsulta2, 0,2);
										$fechaCreacionFormateada = mysql_result($resultadoConsulta2, 0,3);
										
										$mail->Body .= '<br><span style="font-weight:bold">'.$fechaCreacionFormateada.":</span> Se ha agregado un nuevo contenido educativo a ".$nombreAsig.".";
										if($tipoOperacion == 2) $mail->Body .= " (Editado)";
									}
								}
								//FIN DE CONTENIDO EDUCATIVO
								
								//NOTIFICACIONES
								if($idTablaOrigen == 7){
									//Busco a la notificacion para obtener los datos de ella.
									$consulta = "SELECT notificacion.titulo, 
														(SELECT nombre FROM tiponotificacion WHERE tiponotificacion.idTipoNotificacion=notificacion.idTipoNotificacion AND tiponotificacion.estado<>-1 LIMIT 1) AS tipoNotificacion,
														DATE_FORMAT(notificacion.fechaPublicacion,'%d/%m/%Y') AS fechaPublicacionFormateada
												  FROM notificacion, ciclolectivo
												  WHERE notificacion.idCicloLectivo=ciclolectivo.idCicloLectivo AND
														notificacion.estado<>-1 AND 
														ciclolectivo.estado<>-1 AND 
														notificacion.idNotificacion=".$idRegistroOrigen." AND notificacion.estado=1 AND notificacion.fechaPublicacion<=now()
												  LIMIT 1";
									
									$resultadoConsulta2 = mysql_query($consulta, $connect);
									$cantFilas2 = mysql_numrows($resultadoConsulta2);
									
									if($cantFilas2==1){
										$tituloNot = mysql_result($resultadoConsulta2, 0,0);
										$tipoNot = mysql_result($resultadoConsulta2, 0,1);
										$fechaPublicacionFormateada = mysql_result($resultadoConsulta2, 0,2);
										
										$mail->Body .= '<br><span style="font-weight:bold">'.$fechaPublicacionFormateada.":</span> Se ha agregado una nueva notificaci&oacute;n del tipo ".$tipoNot.". Breve descripci&oacute;n: ".$tituloNot.".";
										if($tipoOperacion == 2) $mail->Body .= " (Editado)";
									}
								}
								//FIN DE NOTIFICACIONES
								
								//MODULO Y HORARIOS
								if($idTablaOrigen == 8){
									//Busco al modulo para obtener los datos de el.
									$consulta = "SELECT asignatura.nombre AS asignatura,
														DATE_FORMAT(modulo.fechaCreacion,'%d/%m/%Y') AS fechaCreacionFormateada
												  FROM modulo, asignatura, tipomodulo, turno
												  WHERE modulo.idAsignatura=asignatura.idAsignatura AND
														modulo.idTipoModulo=tipomodulo.idTipoModulo AND
														modulo.idTurno=turno.idTurno AND
														modulo.estado<>-1 AND 
														asignatura.estado<>-1 AND 
														tipomodulo.estado<>-1 AND 
														modulo.idModulo=".$idRegistroOrigen." AND modulo.estado<>-1
												  LIMIT 1";
									
									$resultadoConsulta2 = mysql_query($consulta, $connect);
									$cantFilas2 = mysql_numrows($resultadoConsulta2);
									
									if($cantFilas2==1){
										$asignaturaMod = mysql_result($resultadoConsulta2, 0,0);
										$fechaCreacionFormateada = mysql_result($resultadoConsulta2, 0,1);
										
										$mail->Body .= '<br><span style="font-weight:bold">'.$fechaCreacionFormateada.":</span> Se ha actualizado el horario de ".$asignaturaMod.".";
									}
								}
								//FIN DE MODULO Y HORARIOS
							
								//MENSAJES
								if($idTablaOrigen == 9){
									//Busco al mensaje para obtener los datos de el.
									$consulta = "SELECT mensaje.asunto, persona.apellido, persona.nombre,														
														DATE_FORMAT(mensaje.fechaCreacion,'%d/%m/%Y') AS fechaCreacionFormateada
												  FROM mensaje, persona
												  WHERE mensaje.idRemitente=persona.idPersona AND 
														(mensaje.estadoRemitente<>-1 OR mensaje.estadoDestinatario<>-1) AND persona.estado<>-1 AND 
														mensaje.idMensaje=".$idRegistroOrigen." AND mensaje.estadoDestinatario=1
												  LIMIT 1";
									
									$resultadoConsulta2 = mysql_query($consulta, $connect);
									$cantFilas2 = mysql_numrows($resultadoConsulta2);
									
									if($cantFilas2==1){
										$asuntoMens = mysql_result($resultadoConsulta2, 0,0);
										$apellidoPersonaMens = mysql_result($resultadoConsulta2, 0,1);
										$nombrePersonaMens = mysql_result($resultadoConsulta2, 0,2);
										$fechaCreacionFormateadaMens = mysql_result($resultadoConsulta2, 0,3);
										
										$mail->Body .= '<br><span style="font-weight:bold">'.$fechaCreacionFormateadaMens.":</span> Has recibido un nuevo mensaje de ". $nombrePersonaMens." ".$apellidoPersonaMens." cuyo asunto es: ".$asuntoMens.".";									
									}
								}
								//FIN MENSAJES
							}
							
							$mail->Body .= '<br><br> ** Puede ver toda esta informaci&oacute;n en detalle en nuestro sistema. Para ingresar al mismo haga: <a href="http://'.$url.'" target="_blanck">clic aqu&iacute;</a>';
							
							//Enviamos el correo.
							$exito = $mail->Send(); // Envía el correo.
							
							//echo($mail->Body);
							
							if(!$exito){
								echo "<br> Problemas enviando correo electronico a ".$email;
								echo $mail->ErrorInfo;
							} else {
								echo " <br> Mensaje enviado correctamente <br/>";
							}
						}else{
							echo("<br> No hay novedades que enviar a la persona.");						
						}
						//FIN ENVIO DE CORREO--------------------------------------------------------------------------------------------------------------
					}
				}while($fin==1 && $cant<$cantMailMaxima);
				
				//Actualizo cual fue al ultima persona que le mande un correo
				$consulta = "UPDATE `institucion` 
							 SET `idPersona` = ". $idPersona ."											 
							 WHERE `institucion`.`idInstitucion` = 1 
							 LIMIT 1";
						
				$resultadoConsulta = mysql_query($consulta, $connect);
			}else{
				echo("No hay ciclo vigente. <br>");
			}
		}else{
			echo("Ya se han enviado en el dia de hoy todos los correos. <br>");
		}
	}else{
		echo("No se han cargados los datos del webmail correctamente. <br>");
	}
}else{
	echo("No hay instituci&oacute;n activa. <br>");
}
?>